var express=require('express'); 
var app = express.createServer(); 
var contadores = new Array; 
var puerto=process.argv[2]?process.argv[2]:8080; 

app.get('/', function (req, res) { 
	res.send('EJERCICIO 3, escribe /html o /json'); 
}); 

app.get('/html', function (req, res) { 

        var html = '<html><head><title>LISTA DE CONTADORES EN HTML</title></head><body><h1> LA LISTA DE CONTADORES EN HTML ES: </h1><br>';

        for(var i in contadores) {
                html = html + 'Contador con id: ' + i + ' = ' + contadores[i] + '<br>';
        }
        html = html + '</body></html>';
        res.send(html); 
}); 

app.get('/json', function (req, res) { 
	var json = '{ ';
        for(var i in contadores) {
                json = json + i + ' : ' + contadores[i] + ' , ';
        }
        json = json.substr(0, json.length-3) + ' }';
        res.send(json);
 
}); 

app.get('/actualizarContador', function (req, res) { 
	
	var form ='<html><head><title>FORMULARIO HTML</title></head><body><h1> ACTUALIZADOR DE FORMULARIOS </h1><br><FORM action="http://127.0.0.1:8080/contadorActualizado" method="POST"><P>ID CONTADOR: <INPUT type="text" name="id"><BR>NUEVO VALOR: <INPUT type="number" name="nuevoValor"><BR><INPUT type="submit" value="Enviar"></P></FORM></body></html>';

        res.send(form);
 
}); 

app.post('/contadorActualizado', function (req, res) { 
		
        contadores['primero'] = req.nuevoValor;
        res.send('<html><body>CONTADOR ACTUALIZADO</body></html>');
    
}); 

app.put('/contador/:id', function( req,res ) { 
	contadores[req.params.id] = 0; 
	res.send( { creado: req.params.id } ); 
}); 

app.get('/contador/:id', function (req, res) { 
	res.send( "{ "+req.params.id+": "+ contadores[req.params.id] + "}" ); 
}); 

app.post('/contador/:id', function (req, res) { 
	contadores[req.params.id]++; 
	res.send( "{ "+req.params.id+": "+ contadores[req.params.id] + "}" ); 
}); 

app.listen(puerto); 

console.log('Server running at http://127.0.0.1:'+puerto+'/');
